﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SGS.Rule
{
    public interface ICardPool<T>// where T : ICard
    {
        void PushToPoolStart(IEnumerable<T> cards);

        void PushToPoolEnd(IEnumerable<T> cards);

        IEnumerable<T> GetCardsFromPoolStart(int cnt = 1);

        IEnumerable<T> GetCardsFromPoolEnd(int cnt = 1);

        int AllCount
        {
            get;
        }

        int JunkCount
        {
            get;
        }

        int Count
        {
            get;
        }

        void Shuffle();
    }
}
